﻿using Abp.Application.Services;
using Abp.Application.Services.Dto;
using MyCompanyName.AbpZeroTemplate.Prm.System.Dto;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.Http;

namespace MyCompanyName.AbpZeroTemplate.Prm.System
{
    public interface ISubstanceAppService : IApplicationService
    {
        /// <summary>
        /// 得到物质列表
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        Task<PagedResultOutput<SubstanceOutPut>> GetAll([FromUri] GetSubstanceInPut input);

        /// <summary>
        /// 创建新物质
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        Task CreateSubstance(CreateSubstanceInput input);


        /// <summary>
        /// 根据ID取物质
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        SubstanceOutPut GetById([FromUri]int id);

        /// <summary>
        /// 设置物质产品
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        Task SetSubstanceProduct(CreateProductInPut input);

    }
}
